{ flakeOutputs, hostName, ... }:
{
  imports = [
    # Dependencies #
    flakeOutputs.nixosModules.default

    # Seperated Configuration Parts #
    ./hardware
    ./users
    ./console.nix
    ./daemons.nix
    ./desktop.nix
    ./lingual.nix
    ./networking
  ];

  config = {
    boot.loader = {
      systemd-boot = {
        enable = true;
        editor = false;
        configurationLimit = 16;
      };
      efi.canTouchEfiVariables = true;
    };
    networking = {
      inherit hostName;
    };

    nix = {
      settings = {
        fallback = true;
        pure-eval = true;
        use-xdg-base-directories = true;
        experimental-features = [
          "nix-command"
          "flakes"
        ];
      };
      channel.enable = false;
      gc = {
        automatic = true;
        dates = "monthly";
      };
    };

    system.stateVersion = "24.05";
  };
}
